home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ham Radio 2000 #2
/
Ham Radio 2000 - Volume 2.iso
/
HAMV2
/
TCP_IP
/
TNOS230B
/
FEATURES.110
< prev
next >
Wrap
Text File
|
1994-11-19
|
40KB
|
878 lines
Welcome to TNOS release 1.10b
Please remember that this is beta code. You probably will find bugs, just
make sure to report them. Also, DO NOT give out any copies of beta-test
code to ANYONE without the authors permission. Doing so will cause us BOTH
a lot of grief (mine from them, yours from ME).
One of the new things here is the VIEW command, which you are in now.
This table shows how to move about in the VIEWER. Try these keys out, now!
keys actions
=========== ==============================
h,H,< move to the top of file (HOME)
e,> move to the end of file
^D move down the file 1/2 screen
^U move up the file 1/2 screen
d,^N,j move down the file one line
D,^V move down the file one page
u,^P,k move up the file one line
U,v move up the file one page
^C,q,Q,ESC exit VIEWER
other keys redisplay screen
This is the new features file, named 'features.new'. If you rename this
file (or move it to another directory, you will not be prompted for viewing
this on each startup.
*** NOTE: CDROMs can be used in all areas of TNOS the same as any other
disk with one exception. DOS (or the CDROM drivers) seems to return a
'file or directory not found' error when checking for the existence of
the root directory of a CDROM. When trying to 'cd' to the root directory
of a CDROM you will encounter this error. You can read files from the root
and you can change to a directory on the CDROM, you just can't 'cd' to
the root.
NEW TO 1.1.0......
- Changed the BBS SID to properly reflect the version number
- Added an FTPMAXCLIENTS command to limit number of active clients
- Fixed the BBS FWDing bug
- Fixed the groupcommand() function to create the groups file if it
doesn't already exist
- Fixed problem with Conference Bridge 'smiley' command not closing the
'smiley' file.
- Added some pwait() calls to try to make the smtp server a little more
CPU-time-friendly during expansion of mailing list messages
- Made many minor changes to the Conference Bridge to make it more compatible
with the PingPong conversd code. While this is GOOD to PP code, it CAN be
bad to TNOS v1.0.0 code. If you are linked to other TNOS v1.0.0 converse
servers, you MAY experience unknown problems with the linked sessions.
I strongly suggest that all TNOS systems using the Conference Bridge
upgrade to v1.1.0.
- Fixed a few minor Conference Bridge bugs relating to groups (thanks
Ron/N8FOW)
- Made changes to the Quote-of-the-Day server's data file, to make it easier to
manage. If you are using the Quote server with v1.0.0, you must make minor
changes to it for v1.1.0. The format now is:
[d] %file
.......
.......
[d+1]
where 'd' is the day of the month ([1], [2], etc.). The "%file" is optional.
If you use it, the data for the quote is read INSTEAD from "file". The
entire "file" (as much as 4K) is returned as the quote. If "file" is NOT
included on the "[d]" line, all following lines (until the next "[d]" line)
is returned as the quote.
- Added change to alloc.c (from Andrew Benham) to handle an obscure bug if
"mem minheap" is set to > 32767.
- Added code to allow receiving ip type=4 for encap interfaces.
- Added a "ip encapnew [on | off]" command that allows transmission on an
encap interface using ip type=4.
- Added a "ax25 rosecall <call>" command to set an entry Rose switch callsign.
Also added syntax to the connect and split commands to allow rose connects
like "c 2m ko4ks @ 813105". This has also been added to the BBS connect
command.
- Added FBB-style forwarding. This includes the "5 at a time, back & forth"
style of protocol, but does NOT add FBB message compression (at least, not
yet). Thanks Jack!
- Added a bunch of code and code changes to allow TNOS to be compiled under
Linux. Several long standing bugs were found due to the GNU compiler.
- Revamped the code in version.c (again) to make it easier to maintain.
- Fixed a few assorted bugs in expire.c dealing with bid and wpages
processing. Also made a sysop WPAGES command addition force a WPAGES KICK
for the users (WPAGES) file, but not the BBS (WPAGEBBS) file.
- Then later reverted, temporarily, the bid and wpages lookup/expire code
to non-sorted mode while I look into a better way to handle LARGE files.
Even though only minimal info is kept in memory while the file is being
sorted, it can take up most/all of available memory, which CAN cause
lockups if other "stuff" is going on at the same time. The sort code will
be re-addressed in v1.11.
- Cleaned up the config.h and makefiles for readability.
- Added a DELEGATION SERVER. The idea is this, a user who is going to be
away for a period of time can set the system up to selectively (1) hold
their mail, (2) forward their mail to another email address, (3) notify
the sender that they are away (with an optional personal message), and
(4) set the beginning and ending dates for forwarding DELEGATION to be
in effect. Neat stuff!
- Added a "CONVERS ALIAS <call>" command, to allow 2 diffferent calls/aliases
to the Conference Bridge.
- Added to the Mailbox "WP user @BBS" command the ability to set the WPAGEBBS
heirarchial address also, by giving a complete heir address for "BBS".
- Was totally blown away when I realized that there was not a SINGLE pwait()
call in all of the Conference Bridge code. What this means is that if the
converse code had more to do, it did it, and didn't give the other processes
any CPU time, including the process that would deliver the data!
A few have been added in the appropriate places and performance of the
entire system has improved. Previously, a system would sometimes MYSTERIOUSLY
become unstable, with plenty of memory, if the Conference Bridge became
highly active. The mystery has been solved!
- Added a "convers console callsign" command to provide more flexibility. It
is initialized to the first section of the hostname. This is what the user
from the console gets identified with if he issues a "conference" call.
- Changed defaults to "conv umaxq" to 3K and "conv hmaxq" to 6K.
- Fixed a long standing bug in finger (actually any command calling the
pathname function) when the default location of a file begins with "./" or
"../", as they ALL do in the Linux version.
- Added the "forward fbbstyle" output to the "forward status" command.
- Added code to allow a remote sysop to view the output of the "start ?"
command.
- Changed the home bbs setting routine to use the AX MYCALL as default,
rather than the HOSTNAME.
- Added a "tcp connections" command that is basically the same thing as the
"tcp status" command, except that the TCP MIB values (those variables and
numbers at the top of the status command output) are not displayed. This
is good for quick peeks at the connections. The syntax is the same, only
the name was changed to protect the innocent ;-) The "tcp status" command
remains intact.
- Added to the Information Server a "~sp num" command, which seeks the current
data file to the position saved in integer variable 'num'. Also changed
the integer variables from 16-bit values to 32-bit values for this reason.
And added an additional text control sequence of "~p", which is replaced
with the offset position of the current data file.
For example,
~i2=~p (save current position)
....... (do something)
~sp 2 (later, return to beginning position)
Also now the following attributes of a parent script get inherited by
a child script when using the "~$" command:
user I/O socket (this was previously the only inherited attribute)
whether it was an IP connect or AX25
call sign of user, if AX25
all integer variables, and string variables
all open connection sockets (they should NOT be closed by the child)
(you WERE warned!)
the current data file is NOT inherited, allowing the child to
have a separate data file, without closing the parent's file
- Additions to Information Server:
A new text control sequence "~l" which is replaced with the elapsed
time of the current script.
A new feature to the "~$" command to allow executing a child script
in the background. To do this, make the command
"~$$ scriptname".
A child script inherits all 10 of the string variables (if they are
defined) from the parent script, but the first five (0-4)
remain local (private) to the child, while the last five (5-9)
are shared with the parent, allowing global string variables.
All 10 integer variables are inherited, and the last 5 (5-9)
are also shared with the parent, allowing global integer
variables.
- Added a "mbox maxtimer <timeinseconds>" command, to permit the BBS to
gracefully "bump" off a user that is on for an excessive time. This is
added to allow a maximum BBS forwarding session length, but can also be
used with "human" users that monopolize the host's resources.
- Added a "server" function that I call ProxyMail. It goes like this:
At a specified time (probably middle of the evening), ProxyMail kick off
and for it's subscribed users is obtains listings of new messages that
have been received in the last day. The setup contains the desired areas
that each user wants. These listings are sent to the user in a single
mail message. If the user has a TNC on, this can be received and waiting
for him/her when they awake.
This cuts down on bandwidth for listings at peak times.
ProxyMail has been implimented as a Script, partly as an example, mostly
because it is a simple task that can be handled WELL in a script, and it
allows easy customization.
Other parts to the ProxyMail Trilogy (coming soon to a theater near you)
are the parts to allow the user to set this information without SYSOP
intervention (probably a script, also) and a part to allow a user to
send a single message to the BBS giving areaname-messagenumber combinations
which will generate a SINGLE message in reply, for easy "fetching".
- Added a BBS "cmd" command, which allows SYSOP-customizable commands, via
Scripts. They are script files, kept in the "spool/cmds" directory, that
have an extension of ".cmd". There is a user-displayable help/summary
file for this named "spool/help/usercmds.hlp", which the user can get
with just "cmd".
The syntax is "CMD cmdname arg0 arg1 arg2 ... arg9". All parameters are
optional. If any arguments are given, they are passed to the script as
string variables ~0-~9, and the number of user arguments passed to the
script can be found in integer register ~i0.
- Fixed a newly discovered, long standing bug with the Information Server
script language in properly handling scripted telnet connections with the
"~$" command. The telnet negotiations were not being handled, causing
a inability to connect to telnet port 23 (the BBS of a TNOS system),
as well as some other ports. This is now fixed
- The third part of the ProxyMail trilogy is complete (yes I've skipped
number 2) and it also is handled in a script (mainly). In fact, it is the
SAME script used in the first part. There was an additional smtp server
added for mail to "PROXY" (or rewritten to that name). This server copies
the data to a temp file, and spawns off "spool/cmds/proxy.cmd". A PROXY
request can contain any BBS commands that the user can normally do from
the command line.
- Added a new function to the game named mbscripthook(). This allows a
script file to be called (if it exists) at certain times in the BBS.
These scripts must be located in the spool/cmds directory. They each
are passed in one parameter, though in some cases the data given isn't
much help. In all hook scripts, the callsign (available with "~c") is
valid. Initially, I have only 4 hooks in the BBS code:
dosend.sys called in the dosend() function if this is NOT
a BBS. This is called early in the process, but
after the rewrite has been run. The parameter in
"~0" is the originalname, a dash, and the rewritten
name. For example, "sp ko4ks@ko4ks.ampr.org" on
my system sends "ko4ks@ko4ks.ampr.org - ko4ks".
newuser.sys called when a non-BBS user logs in for the first time,
after sending the "spool/newuser" file. The "~0"
parameter is "newuser callsign".
login.sys called right before first prompt is sent, if this is
a non-BBS user. The "~0" parameter is "login callsign"
logout.sys called at the beginning of the logout process, after
the user selects the "bye", "exit", or "quit" command,
if this is a non-BBS user. The "~0" parameter is
"logout callsign"
- Fixed a bug in beta 13 that crept in between b8 and b12 with rlogin. The
problems was caused by checking in the mbxrecvline() function for the
link type being TELNET_LINK, and only then analyzing for telnet
negotiations in the data stream. This protection is good for keeping
binary color files from possibly being interpreted as telnet sequences.
The problem was, I should have been checking for RLOGIN_LINK, as well.
- Added a fix to what seemingly WOULD be a common problem with the DELEGATION
server. The "new" DELEGATION user seems to want to TEST that it is doing
its job by sending a message to him/her self. Well, IF he has the DELEGATE
option on of notifying the sender of the absence, then we now have an
INFINITE LOOP. Think about it, ME sends a message, BBS now notifies ME,
which in turn notifies ME, etc....
Now, if a user has DELEGATION on and tries to send a message to him/her
self, the dosend(() function says, "nope!", tells the user why, and aborts
the message. It is also logged in the log file.
- Fixed the BBS "operator" command, which DID do a disconnect from the BBS
if the user used the escape key to terminate the chat session on his end.
Now, he is PROPERLY returned to the BBS, no matter who terminated the
session.
- Fixed a bug with dosend.sys and the SR command.
- Fixed a long standing bug with the HOSTNAME command. It now will properly
remove a trailing "." on the hostname.
- Added a new script command, "~ap to from", which appends a string variable
(from) to the end of another existing variable (to). For example, to make
a filename of the form "/nos/scripts/~9.cnf", with string variable 9 as a
basename, use something like:
~a 1 /nos/scripts/ # directory name in 1
~a 2 .cnf # file extension in 2
~ap 1 9 # add the basename to 1
~ap 1 2 # and add the extension to 1
This is necessary since the ~f and ~o commands either take a hardcoded
string, or a single variable (i.e., "~o ~1", in this example).
- A few misc cosmetic fixes.
- Linux fixes:
* fixed a bug in the directory code that DIDN'T add a <CR> before
the disk-space line, if there were an odd number of directory
entries.
* fixed a bug in the finger daemon found if fingering "@host".
The filespec being used was a DOS one, "*." for finding all
filenames without an extension, which in Linux finds all files
ending in ".".
- Added a "nlist" command to the ftp client, in addition to the "nlst"
command, for those who are used to the other name.
- Added a line to the FTP banner, which tells how many FTP users are
currently on the system.
- Fixed a quirk in dosend() which caused a DNS lookup if sending to a user
without a "@host" or "@BBS" in the address.
- Added code in the Conference Bridge to flush a socket if 2400 bytes are
queued and it has not been flushed. A JNOS user earlier reported that
data loss occurred at 2560 bytes if flushing had not occurred. Whether
or not this has been a problem in TNOS, I don't know, but it was easy
enough to put in the protection.
- Reviving the sorted searches of history, wpages, and wpagebbs files. These
were "tabled" earlier, since sorting a large file stole all of memory. Now
it used my Virtual Memory System, which has been used for storing screen
memory. The VMS code used XMS (if available) or disk. While it is not
very easy to replace normal code with accesses to the VMS, this localized
usage was easy to convert. Now when sorting, you either use XMS or disk, so
if there is no available XMS, you will have an additional file open during
expiration of bids and wpages. ONLY ONE file can be sorted at a time. This
is paced by the VMS code, making any SECOND process simply wait until the
first is complete.
- Added a new form of memory allocation, pooled memory. There has long been
a problem with memory fragmentation, caused by several tables (mbox user
list, ax25 heard list, ip heard list, etc.) which are linked lists that
are NEVER freed. Under low usage conditions these are not a problem, but
when the system is stressed and a new entry needs to be created, it is
created "high" in memory. Then when the load is reduced, there is no
way to move this SMALL piece of memory. The memory will remain fragmented.
And so enters POOLED memory. The idea is this, instead of allocating
dozens of little allocations, we will allocate a smaller number of LARGER
allocations, in pools. Initially all pools will be allocated in multiples
of 50, though this might become configurable at a later date. While this
may sound large, the size of these individual components are about 20-30
bytes each, making a pool of 50 only 1K to 1.5K. There is no
penalty, for example, for ax25 heard if you do not set up "ax25 hport"s,
since the pool memory is not allocated until the first request comes in,
or until the current pool is exhausted.
While this is not perfect, it SHOULD reduce memory fragmentation
dramatically for these routines for most systems, without noticable
overhead.
- Fixed 2 bugs in TNOS/Linux that was inherited from previous unix coders.
When completing a shell command, there WAS a "zombie" process that would
hang around until tnos died. Also, the Command Session screen was NOT
being restored when coming back from the shell command. Both of these
are fixed as of beta 20.
- Added a line to the mailbox stats (BBS 'ms' command, Command Session
'mbox mailstats' command) that tells the number of queued SMTP messages
waiting to be processed, if there are any. This info is also displayed
when fingering "bbs" or "stat".
- Made an "adjustment" to the dialer code. Up until now, the filename that
you pass it to use as the dialer script got ran through the rootdircat()
function, that pre-pended the xNOS root directory. This made the script
name RELATIVE, and if you passed in a complete pathname, it STILL added
the root directory to the front. Now the code only calls rootdircat() if
the first character is NOT "/" or "\".
- Fixed a recently discovered TNOS bug that has existed since 1.00. When I
added the separate callsign for each interface for IP traffic, I seem to
have missed the ARP code, which was still sending ARP requests out with
the AX25 call, NOT the IP call. This caused some occasional auto-routing
woes. Now the ARP code sends from the IP call sign.
- Added a new smtp feature for rewriting "from" addresses. This uses a
spool/translat file, which is similar to the rewrite file, except that
the original senders address is changed. The format of the translat file
is "fromname newfromname". If the file doesn't exist, then the address
remains unchanged.
You might already be asking "WHY!" (or be dialing 1-800-KILL-KO4KS). Let
me give you two different VALID uses to rewrite the from, especially at
a gateway.
1) I run a Linux system, with TNOS/Linux running on the same machine. For
some DUMB reason, I prefer using a REAL mail program than the BBS mailer.
On the Linux system, I am "brian@lantz.com". I want to respond to mail,
sent from regular PBBS, which has been forwarded to my "brian" account.
BUT I want it to be FROM "ko4ks@ko4ks.ampr.org". This addresses that need.
2) A gateway can provide Internet addresses now, and the mail can even
be forwarded to other non-IP BBSs, if that is desired. BUT if the user
sends mail, it MUST be sent from an IP BBS that is known from the Internet.
With translate, the user can send from a non-IP home BBS (if arrangments
have been made with the IP sysop), and have that mail TRANSLATED to look
like it was coming from the Internet-known IP BBS. That sysop COULD set
up a forward.bbs entry for that user that rewrites the TO address to the
one expected by the non-IP BBS, and voila! Two way Internet traffic with
a non-IP endpoint.
A warped mind, you say! You don't know the half of it ;-)
- Added code in main.c to automatically create the spool/mail/control and
spool/mail/users directories, to make JNOS->TNOS upgrading a little less
painful.
- Changed the expire code for bids and white pages to only expire if new
entries were added. This MAY cause some entries to remain longer than
desired, but will remove the performance penalty if frequent passes are
made.
NEW TO 1.0b43......
- fixed a bug with the mailfor "# of messages" line, with the number in
conference being displayed wrong.
- fixed the command session "rdate" help message.
- added a 'ping' command to the BBS and fixed ping for remote sysop usage
- added 'domain query' and 'domain ?' commands
- fixed FTPUSERS permission bug
- cleaned up minor bugs in REQSVR and GROUPS
- added code to make nntp-style area names work transparently, including
support for control files.
- changed the VERSION command to read a text file (created by a new command,
MKVERS.EXE) instead of reading the data from program memory.
- added a "quick kludge" to give subscription information to the REQSVR
group subscription. Will come back and re-do this later.
- added original message in body of a REQSVR GROUP INFORM message
- fixed bug in BBS that required IHEard instead of IHeard
- added a BBS "version" command, which yeilds the same results as the Command
Session "version" command
- fixed a bug which made public BBS areas "sometimes" remember an incorrect
last message number. This was caused by parsing for the "idAAxxx" string
but not taking ONLY the first one.
- Added code to the BBS "list" command to parse off leading spaces in the
Subject field
- Added logging of each FTP connect request to a SPOOL/ftp.log file
- Added a "mbox logging on|off" Command Session function to allow/deny
logging of each MBOX connect request to a SPOOL/mbox.log file
- Modified finger "@host" to also tell of built-in finger names
- Modified to eliminate telnet permission check for QUOTE, CALLBOOK and
FINGER service from the BBS
- Many assorted bugs squashed
- Added a confirmation prompt when you give the "exit" command from the
Command Session.
NEW TO 1.0b42......
- fixed a long-standing bug where a received BBS BID was being converted to
lower case (along with the rest of the command line. It seems that the
BBS spec converts the command line to upper case, including the BID.
BIDs are now kept in uppercase.
- changed the POP3 client to pass to SMTP one message at a time. Previously
all messages were received, deleted, and THEN passed to SMTP. If an error
occurred, it was too late... The messages were already deleted.
- modified the display for the command session "mbox mailstats" (which is
the same as the BBS "MS" command. Now includes heapsize, available, etc.
for the memory section.
- modified BUILDCTL.EXE to delete any '.ctl' files that do not have a
coresponding '.txt' file. This is primarily for use with PCELM.
- added to the Conference Bridge a "/join groupname" command, which changes
to channel of group 'groupname', or creates a new 'group' channel. Added
to the Conference Bridge entry messages the count of how many are in the
conference bridge and how many groups are active. Also added a "/groups"
command, which lists all named groups and nets.
- changed grammer of "for a total is" to "for a total of" in Conference
Bridge "ROLL" command.
- converted the internal representation of the MID to upper case for less
confusion to the AX25 BBSer at two places.
- changed the lookup of bids and white pages to use a binary file search
algorithm. Much faster. Now the "HISTORY", "WPAGES", and "WPAGEBBS" files
are kept in sorted order. This sorting is done when the "OLDBID/OLDWPAGES"
command is executed.
All new entries for either of these three files are kept in a file with
the same name and a suffix of ".new". These new entries are merged as a
part of the "OLDBID/OLDWPAGES" command.
- changed the algorithm to fix the 'disappearing USERS.DAT file' bug in
case of a file open error.
- changed the time base of the OLDBID and OLDWPAGES commands. The second
parameter, which WAS the number of hours between clean-ups, is NOW the
number of MINUTES between clean-ups.
- and also changed the OLDBID/OLDWPAGES commands to have sub-commands and
operate more consistantly with other TNOS commands. OLDBID is now BID.
OLDWPAGES is now WPAGES. Each of these has three sub-commands: AGE, KICK,
and TIMER.
- added to the mailfor "# of messages" line, the number in conference
NEW TO 1.0b41......
- fixed a bug when using the SF BBS command. Dup bid was being wrongly
found.
- modified BUILDCTL.EXE to allow easy usage of PCELM 3.1 with TNOS's message
control files. If you are using PCELM, use the enclosed MAIL.BAT to
execute PCELM, and your control files will always be in sync. Change the
directory on the BUILDCTL line to reflect your TNOS root directory.
PCELM 3.1 should be available from the same source that you received
TNOS from.
- fixed a memory buffer overflow error with POP and long data lines.
NEW TO 1.0b40......
- made oldbid and oldwpages into separate processes
NEW TO 1.0b39......
- changed version number style from 1.0.39b to 1.0b39 in preparation for
release version 1.0. Format is VV.RRDLL, where VV=version number,
RR=release number, D=development stage (d=development, a=alpha, b=beta,
r=release) and LL=development level. If no "DLL" given, the default is
"r00".
- If expanding an mail group, we now strip off received R: lines, since this
is now a NEW message being generated.
- fixed return receipt RFC line in relation to data RFC lines
- fixed rmail 'To:' RFC line in relation to data RFC lines
- added mail group RFC line in data RFC lines
- made cosmetic display changes in the BBS commands "ML" and "WP"
- fixed a bug that put a blank line after the MessageID line on messages
with custom bids
- tested and modified POP2 and POP3 client and server code to permit
proper handling of TNOS control files.
- Added the number of active messages to the MAILFOR broadcasts
- reverted back to previous alias/group expansion (changed in 1.0.38b)
since this was not found to be necessary. Setting "SMTP GATEWAY yourhostname"
causes all unknown hosts to be handled locally.
- fixed bug with over-zealous white pages expansion. Now the white pages
lookup checks first to see if the name has a standard IP suffix, if found
it's a hostname. If not, it attempts to resolve the name. If it doesn't
resolve, then it is assumed to be a AX25 BBS user, and white pages
expansion takes place. To ensure that a user's mail goes out SMTP, either
use "user@host.ampr.org", or place entries in your rewrite to rewrite
to this format. To ensure that a IP user's mail DOESN'T go out SMTP,
add a line to the rewrite file like "user@host* user".
NEW TO 1.0.38b......
- SAM callbook support directly, through the Request Server and through finger.
If the callbook server is located locally, then the conference bridge
can also access it with the /CALL command.
- Now marks as invalid a MID stored in the history file for a personal
message that has been forwarded off the system. This allows it to be
able to come back on (no matching bid, now) if it needs to be.
- Fixed bugs with the Request Server and the Information Server.
- Moved logging of White Pages BBSs from the BBS send routine to the SMTP
server.
- Added in outbound forwarding sessions checking for a session being
'bumped'.
- Fixed a bug with alias/group name expansion that occurred if the expanded
name was in the form of "user@dest". Previously this was treated as an
IP hostname, even when it was a AX25 BBS. Now the name is searched for
a standard IP suffix, if found it's a hostname. If not, it attempts to
resolve the name. If it doesn't resolve, then it is treated as a BBS
hier address.
- Added the BBS user's realname, with auto-fetching from SAM database, if
it is located locally. The realname is placed in the message headers.
- Added BBS "NAME" command to allow user to change his realname.
- Added RFC headers to the body of locally generated messages.
- Fixed bug that would allow a MID to be sent, even when the receiving
system doesn't support MIDS.
- Fixed bug which made messages with no "@addr" forward out as "user@user".
- Fixed bug which stripped out blank lines from all forwarded messages.
NEW TO 1.0.37b......
- Added a "mbox rstyle" command, to allow the use of "W0RLI-style", short R:
lines. Modified MID to meet proposed spec, i.e. numbers in range of 1-65535.
Also, made MID numbers separate from sequence numbers.
- Added to the BBS SYSOP "bump" command the equivilent of the command session
command "mbox zap user" with the bbs command "bump user now".
- Added two new commands to the information server script language, one to
allow calling a script from within a script, the other to search for a
substring within another string.
- Added a Command session "script" command, to directly call an Information
Server Script file from the Command Session.
- Added four other commands to the information server script language to
support connect/disconnects from within a script.
- convers maxq code added; you can now set limits for users and hosts with
'convers umaxq' and 'convers hmaxq' . If set to 0, there is no limit,
otherwise connections will be reset if there is more then the maxq value
data outstanding on the connection. This should now also reset connections,
instead of the previous graceful close...
- 'convers allow' is now replaced with 'convers filter'
'convers filter mode [accept|refuse]' shows or sets the mode (default refuse)
'convers filter [ipaddress|hostname]' add an ip address to the filter
table.
If filter mode is refuse, then convers links from hosts in the list will
be refused. If filter mode is accept, then only links from hosts in the
list will be accepted.
- mailbox 'K', 'KU', 'MH', 'MT' and 'MP' commands now work on the current
message if no message list is given.
- Mailbox K/KU/MH/MA/MT/MP commands allow message ranges... Eg: 'K 1-4'
- ax.25 resets will send a disconnect to be polite.
- expire process is prevented against multiple invocations.
- Bulletins with NO BID can be refused if 'mbox nobid off'
off means refuse them, on means accept. Default is OFF, ie refuse !
- several system errors and permission infringements will now send
a message to the user 'sysop'.
This is controlled with 'error [on|off]'. Default is on.
- Monitor Trace mode added. Gives a shorter, easier trace display.
'trace <iface> 3xy' sets this, where x=1 sets input, y=1 sets output
- Added a command session 'time' command.
- The 'at' command now works properly.
- ftp server has additional information possibilities:
if a file 'message.ftp' exists in the initial directory (eg. /public, or
whatever), it will be send right after the login.
When CD-ing, if a file 'desc.ftp' exists in the new directory, the
server will send the text in this file to the user...
- 'repeat [interval in ms] command
Starts a new session screen with the output of the command updated
every interval ms. If you hit F10 it ends the session.
Eg: repeat 1000 t s
(repeat every second 'tcp status' command)
- small problem with non ampr.org. domain names fixed.
- Interface names are now case insensitive
- 'mem efficient' command deleted, since it has been totally
useless for "eons" :)
- 'domain addserver' has optional timeout value in seconds for this server.
if not set, timeout defaults to 3 * tcp irtt.
Eg: 'domain addserver wg7j.ece.orst.edu 30'
- 'domain startdns' is gone. Domain Name Server can be turned on and off,
with 'domain dns [on|off]'
- new domain commands, "domain cache dump", "domain subnet", "domain ttl",
and "domain update"
- fixed an apparently long-standing white pages bug, and added code to
eliminate check the white pages twice for BBS generated messages (once
in the 'send' command, once in the SMTP server.
Now, white pages are NOT looked up if message is a bulletin, otherwise
they are checked immediately following the "SP/SB/etc" command line.
SMTP only looks up white pages if (1) an alias is being expanded, (2)
a group is being expanded, or (3) the message was NOT created in the
BBS (if it came onto this system via SMTP).
- fixed color operation for users with BBS permissions who log in
interactively.
- added to the BBS 'get' command the ability to issue the command without
parameters, which will give a summary of the user's profile settings.
NEW TO 1.0.36b......
There are M-A-N-Y bugfixes, too many to list!
There is now color support in the BBS (set g) and conference bridge (/color).
These are defeated by TNOS (sorry) if you are using a split screen session.
This will be fixed soon.
If color is desired in the Conference Bridge and you are running TNOS
locally, you must "TELNET host 3600", rather than "CONFERENCE host". This
places you in telnet mode, not in ttylink mode.
You also have to do a "/na yourname" upon entry to the conference before
you are a part of anything.
For color in BBS sessions, use the "connect" command, not the "split"
command.
The Conference Bridge has four new commands, /roll, /cut, /news, and /smiley.
The BBS MA command now will allow zero parameters, which will release ALL
held messages in the current area.
There is now a LH command in the BBS to list all HELD messages (SYSOPS, only).
There is a FORWARD command session command, which sets BBS forwarding options.
FTP will now corectly send the "spool/ftpmotd", if it exists.
MD5 support, which is a very elaborate CRC scheme, using a 16 byte value.
FTP has several new commands:
RENAME to rename remote file.
LRENAME to rename local file.
MD5 to MD5 remote file.
COMPARE compares (with MD5) remote and local file
MCOMPARE compares (with MD5) remote and local files
UPDATE sets flag to first check with COMPARE before using the
get, mget, put, or mput commands.
You now get different data from the 'help" and the "?" commands in the command
session, BBS, FTP, and Conference Bridge. The "help" command gives details,
the "?" command gives a short summary of available commands.
Changed the BBS forwarding algorithm to start at beginning of the *.fwd file
if a new message has been queued for forwarding. This happens at the end of
processing the current area.
The passwords in the ftpusers file are now MD5-encoded. This is done/checked
automatically on startup. To change a password, replace the MD5-encoded
password with the word desired, and re-start.
The statusline flutter has been reduced.
Added a MBOX BUMP and MBOX ZAP command.
If a user goes to send a message that the system doesn't know how to route
(one that's going to the 'check' area), the user is warned of the problem,
and the suggestion is made that the user probably should abort the message
and re-enter the address.
Added the RLOGIN client and server. After password validation, you are
placed in remote-sysop mode.
The BBS now send the 'I' flag in the SID, showing that it can accept lines
for self-identification purposes. These ID lines are lines beginning with
';' in place of commands.
When reading BBS messages (regularly, not with the 'v' command), the user
is now given a "Message ID:" line, with the "traditional BBS" MID/BID.
The internal format remains the same.
Should now have a "clean" disconnect for all BBSs after a forwarding session.
* When you are in split-screen (chat-type) TTYLINK sessions, the "local"
window (the last 2 lines) are now displayed in the reverse colorset
(like the status line).
* The "color" command has been expanded. The previous syntax works the same
as before ("color background foreground), and changes the color of the
Command Session. All new sessions inherit the colorset of the Command
Session.
This has been expanded with an additional optional parameter, "session#".
Placing a session number on the color line sets the colorset of the given
numbered session, and leaves the Command Session alone. The contents of the
session's screen are changed to the NEW colorset, including any highlighted
characters!
* A Command Session command has been added, "prompt [hostname | dirname]".
The default is "hostname", which works as it previously did. Changing it
to "prompt dirname" will make the Command Session prompt the DOS drive and
current directory name. This is very similar to most people's DOS prompt,
except that the TNOS prompt will be in lower case and the "\"s are changed
to "/"s. This makes it easier to tell at a glance whether you are in DOS
or TNOS.
* The biggest changes come in pre-defined fkeys. The following are the
actions for the specified keys ONLY is you have NOT re-defined them with
the "fkey" command. You have the ultimate control!! Those marked with a "@"
were already in there prior to 21b, but are listed here for the record.
@ INSERT - toggles the current session's status line state on/off
DELETE - toggles the current session's flow control state on/off
HOME - "kick"s the current session
END - ends the current session ("reset")
PGUP - toggles to the next lowest numbered session (not the Command
Session or the Trace Session). Wraps around to the last session
PGDN - toggles to the next highest numbered session (not the Command
Session or the Trace Session). Wraps around to the first session
@ F9 - toggles to/from the Trace Session
@ F10 - toggles to the Command Session
@ F1-F8 - toggles to the numbered session (if it exists). F2 goes to
session #2, etc.
^B - places last executed line into the input buffer
^R - reprints the current line
^W - erase last word in current line (including preceeding space)
^X - delete entire current line
Also, the PAUSE and PRINTSCREEN keys respond like they do in DOS
AND MUCH MORE, that I'm sure I have forgotten.......
Get in there, look around, and have fun!
Brian A. Lantz/KO4KS